package com.sg.dto.biz.app.req;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @desc QueryIconicAchievementsDetailsListComReqDto
 * @使用场景
 */
@Data
public class QueryIconicAchievementsDetailsListComReqDto
        extends BaseDto
        implements Serializable {

    /**
     * 大屏主体ID
     */
    @NotNull(message = "大屏主体ID不能为空")
    @ApiModelProperty("大屏主体ID")
    private String dashboradCoreId;

    /**
     * 大屏主体类型编码 DASHBOARD_PRIMARY_DEPT:大屏归属中层部门 DASHBOARD_BASIC_DEPT:大屏归属基层部门 DASHBOARD_ORIGINAL_ROLE_MEMBER:大屏归属负责人身份人员 DASHBOARD_DIRECTOR_ORIGINAL_ROLE_MEMBER:大屏归属主管身份人员 DASHBOARD_DEPT_LEADER_ORIGINAL_ROLE_MEMBER:大屏归属分管领导身份人员 DASHBOARD_EVALUATION_OBJECT:大屏归属评价对象 DASHBOARD_ORG:大屏归属组织
     */
    @NotNull(message = "大屏主体类型编码不能为空")
    @ApiModelProperty("大屏主体类型编码")
    private String dashboradCoreTypeCode;

    /**
     * 父子中周期类型 PARENT_CYCLE:父周期 MID_CYCLE:中期 SUB_CYCLE:子周期 PROCESS_CYCLE:过程周期
     */
    @NotNull(message = "父子中周期类型不能为空")
    @ApiModelProperty("父子中周期类型")
    private String parentSubMidCycleType;

    /**
     * 成果类型ID
     */
    @ApiModelProperty("成果类型ID")
    private String achievementTypeId;

    /**
     * 成果等级ID
     */
    @ApiModelProperty("成果等级ID")
    private String achievementGradeId;

    /**
     * 冗余评价模板ID
     */
    @NotNull(message = "冗余评价模板ID不能为空")
    @ApiModelProperty("冗余评价模板ID")
    private String evaluationTemplateId;

}
